﻿/*
 * Created by SharpDevelop.
 * User: lpelegrini
 * Date: 23/06/2013
 * Time: 17:25
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;
using Fazenda.Entity;
using Fazenda.DAL;
using System.Data;

namespace Fazenda.BLL
{
	/// <summary>
	/// Description of PersonBLL.
	/// </summary>
	public class PersonBLL
	{
		
		public void Save(Person person)
		{
			//O nome do person é obrigatório
			if (person.Name.Trim().Length == 0)
			{
				throw new Exception("O nome do person é obrigatório");
			}
			
			
			//Se tudo está Ok, chama a rotina de inserção.
			PersonDAL<Person> obj = new PersonDAL<Person>();
			obj.SaveRegistry(person);
		}
		public void Update(Person person)
		{
			PersonDAL<Person> obj = new PersonDAL<Person>();
			obj.UpdateRegistry(person);
		}
		
		public void Delete(int id)
		{
			if (id < 1)
			{
				throw new Exception("Selecione um person antes de excluí-lo.");
			}
			PersonDAL<Person> obj = new PersonDAL<Person>();
			obj.DeleteRegistryById(id);
		}
		
		public DataTable GetAll()
		{
			PersonDAL<Person> obj = new PersonDAL<Person>();
			return obj.GetAllDataTable();
		}
	}
}
